| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| integer(kind=int32), | intent(in) | :: | n |
The number of points. |
||
| real(kind=real64), | intent(in) | :: | z(2,n) |
The points. |
||
| integer(kind=int32), | intent(in) | :: | triangle_order |
The order of the triangles. |
||
| integer(kind=int32), | intent(in) | :: | triangle_num |
The number of triangles. |
||
| integer(kind=int32), | intent(in) | :: | triangle_node(triangle_order,triangle_num) |
The triangulation. |
||
| real(kind=real64), | intent(out) | :: | alpha_min |
The minimum value of alpha over all triangles. |
||
| real(kind=real64), | intent(out) | :: | alpha_ave |
The value of alpha averaged over all triangles. |
||
| real(kind=real64), | intent(out) | :: | alpha_area |
The value of alpha averaged over all triangles weighted by area. |
Determines the triangulated pointset quality measure ALPHA.
The ALPHA measure evaluates the uniformity of the shapes of the triangles defined by a triangulated pointset.
We compute the minimum angle among all the triangles in the triangulated dataset and divide by the maximum possible value (which, in degrees, is 60). The best possible value is 1, and the worst 0. A good triangulation should have an ALPHA score close to 1.
The code has been modified to 'allow' 6-node triangulations. However, no effort is made to actually process the midside nodes. Only information from the vertices is used.